
#ifndef DOMVALIDATOR_H_
#define DOMVALIDATOR_H_
#include "TextFile.h"
#include "XMLAttribute.h"
#include "XMLElement.h"
#include "XmlSemanticException.h"
#include "Log.h"
#include "LogFactory.h"
#include <stdio.h>
#include <iostream>
#include <string.h>
#include <list>
#include <map>
#include <ctime>
#include <vector>
using namespace std;

class DomValidator{	
	public: DomValidator(string path);
	public: ~DomValidator();
	public: void validateDom(XMLElement & root);
	public: void printLoadedStructure();
	private: TextFile * textFile;
	private: map<int, map<string, list<string>*>*> structure;
	private: string lineReaded;
			 Log* log;
private: void generateStructure(int seek,vector<string>& file);
	private: void validateChilds(XMLElement* element, int deep);

	
};

#endif /* DOMVALIDATOR_H_ */